class_name CardState extends Node

enum State {BASE, CLICKED, DRAGGING, AINMING, RELEASED}

signal transition_requested(from: CardState, to: State)

@export var state: State

var card_ui: CardUI

func post_enter() -> void:
	pass


func enter() -> void:
	pass
	
func exit() -> void:
	pass
	
func on_input(_event: InputEvent) -> void:
	pass
	
func on_gui_input(_event: InputEvent) -> void:
	pass
	
func on_mouse_entered() -> void:
	pass
	
func on_mouse_exited() -> void:
	pass

func do_transition(from: CardState, to: State) -> void:
	transition_requested.emit(from, to)
